Aggregate communications with intelligent sourcing

ABSTRACT

Selecting a source account for an outgoing communication content of a user is described. A collection of source accounts is associated with the user. Each source account has an individual content storage storing communication content associated with the corresponding source account. A user&#39;s authentication is validated for using the collection of source accounts. One source account in the collection is designated as a primary source account. The source accounts in the collection are aggregated to a primary content storage. The user is authenticated to sign in to the primary source account. Instructions are received from the user for generating a communication content from the primary source account and the primary content storage. Instructions are received from the user for selecting one of the source accounts in the collection as the source account for the generated communication content, and the user is signed in to the primary source account.

BACKGROUND

The advent of the Internet changes the way people communicate with oneanother. Electronic mail (e-mail), instant messaging, web logs (blogs),online chat rooms, and the like create new ways of communication foronline users. Even the traditional telephone services cannot escape thisinformation wave when voice over internet protocol (VOIP) technologyemerges.

For e-mail communication, an e-mail account is associated with an e-mailaddress, and the e-mail address is an identification that identifies thee-mail account. A service provider provides the e-mail account to auser, and the user may access the e-mail account online via a webinterface through a browser or the user may access the e-mail accountvia a client communication application installed on the user's localdevice. When the user sends an e-mail message, the e-mail address ispre-configured as the sender or source ID for the e-mail message. In thesame way, a phone which includes mobile phone, landline phone, VoIPsoftphone, and VoIP phone device, or the like is associated with acaller identification (ID). When a user makes a phone call, the callerID is pre-configured as the sender ID or source ID.

However, a user may wish to have different personas and may have one ormore e-mail addresses or phone numbers. For example, it is very commonfor an individual who frequently uses the Internet to have a work e-mailaddress, a personal e-mail address, and so on. Similarly, the sameindividual may have a cellular telephone number, a work telephonenumber, and a home phone number.

Currently, in order for the user to send messages using the propere-mail address as the source ID of the message, the user typically needsto log in to the e-mail account and compose the e-mail messages.Alternatively, the user may use a client application that is configuredto include each e-mail account's login information (e.g., username,password, mail server information, and the like) and is able to receivee-mail messages for all accounts. However, currently, the user is unableto login or sign in to one account and compose a message having anothere-mail address as the messages source ID.

SUMMARY

Embodiments of the invention overcome the shortfalls of previoustechnologies by enabling the user to select his/her e-mail address ortelephone number as a source ID for an outgoing telephone call or anoutgoing e-mail message. In addition, aspects of the invention designateone of the e-mail accounts or one of the telephone numbers as a primarysource ID for receiving all messages or all telephone calls.Furthermore, when the user responds to any message within this primarysource ID account, embodiments of the invention will persist theoriginal intended source ID, instead of the primary source ID if theoriginal intended source ID is different from the primary source ID, asthe source ID when the user responds to the message. Alternatively,aspects of the invention may enable user override authority formodifying the source ID when responding messages or may analyzecharacteristics of any given message and produce a history forautomatically suggesting a source ID to the user.

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

Other features will be in part apparent and in part pointed outhereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an exemplary embodiment of a system for selecting a sourceaccount for an outgoing message from a user according to an embodimentof the invention.

FIG. 2 is an exemplary block diagram illustrating an exemplary systemfor selecting an e-mail address for an outgoing message according to anembodiment of the invention.

FIG. 3 is an exemplary block diagram illustrating an exemplary systemfor selecting a telephone number for an outgoing call according to anembodiment of the invention.

FIGS. 4-7 are exemplary screen displays for illustrating a userinterface for selecting a source account for an outgoing messageaccording to an embodiment of the invention.

FIG. 8 is an exemplary flow chart illustrating operation of selecting asource account for an outgoing message for a user according to anembodiment of the invention.

Corresponding reference characters indicate corresponding partsthroughout the drawings.

DETAILED DESCRIPTION

Referring now to FIG. 1, a block diagram illustrates an exemplary system100 for selecting a source ID for an outgoing message for a useraccording to an embodiment of the invention. The system 100 includes aprocessor 102, a central memory storage 104 and an interface 106. Theprocess 102 may be a processing unit, a processor, a microprocessor, acollection of processing units, processors, and/or microprocessors. Inone embodiment, the system 100 may be a computer, a computer server, acollection of computer servers, or part of an enterprise having one ormore computers. The central memory storage 104 may includecomputer-readable medium or computer-readable media accessible by theprocessor 102 for storing data. In one alternative embodiment, adatabase or other computing storage units may be used without departingfrom the scope and/or the spirit of the invention. The interface 106 maybe a user interface (UI), a graphical UI (GUI), a network interface, asystem bus, or other types of input/output interface for the system 100or the processor 102.

In one embodiment, the system 100 may be a mail server for handlinge-mail messages, e-mail accounts, or the like. For example, referring toFIG. 2, an exemplary implementation of aspects of the invention in ane-mail server system 200. In one embodiment, a plurality of e-mailaccounts 204 belongs to a user 110. For example, the user 110 may have apersonal e-mail address 204-1, a work e-mail address 204-2, and a familye-mail address 204-N. It is to be understood that the user 110 may haveother e-mail addresses for other purposes. A router 202 attempts toroute e-mail messages to the user's e-mail addresses 204. Aspects of theinvention, on the receiving of e-mail messages, enable designating oneof the e-mail addresses 204 as a primary source account 210.

On the other hand, embodiments of the invention also enable the usersfor selecting a source account for an outgoing message. For example,embodiments of the invention enable a local device 212 of the user 110for selecting one of the source accounts 214 as a source account forsending messages. To further illustrate these embodiments, referring nowto FIG. 1, suppose the user 110 has established two accounts, a firstaccount 112, and a second account 116. For simplicity, these accountsare e-mail accounts. It is to be understood that these accounts may betelephone accounts, as will be illustrated below, and other types ofcommunication accounts.

Initially, the user 110 associates the first account 112 and the secondaccount 116 with the user 110. For example, the user may have a useridentification associated with an online service. In one example, theuser identification may be an e-mail address, such as the first account.Once the user 110 associates the first account 112 and the secondaccount 116 with the user 110, system 100 validates or determineswhether the user 110 has the proper rights or authorization to use theseaccounts. For example, the system 100 require verification by checkingthe username and password pair for the accounts and requesting andverifying security information, such as personal details, securityquestions “What is the name of the street of your high school?”, or thelike. Once the system 100 has properly verified the user 110, the user110 may designate one of the accounts as a primary source account or anaggregate account 120.

In another example, a user 110 may aggregate multiple accounts into asingle account, where the user can send and receive from this primarysource account 120. The primary source account 120 may be any one of thegroup of multiple accounts to aggregate. The user 110 selects one fromthe group of accounts as the primary source account 120.

In this example, to send an outbound e-mail, the user 110 can select thesender e-mail address from a set of pre-configured e-mail addresses(e.g., the first account 112 or the second account 116) from the primarysource account. For an outbound e-mail, the user 110 can select from aset of pre-configured e-mail addresses and use it as the sender orsource e-mail address (showing up in the “From” field, so therecipient(s) can reply back to the sender). The pre-configuration isdone by tying a set of e-mail addresses, where the user must have thenecessary credentials in order to use these e-mail addresses. The usercannot simply enter any e-mail address as he/she wishes. The user mustbe authenticated to use these e-mail addresses.

For instance, John Doe has three accounts: personal-john@a.com (personalaccount), soho-john@b.com (small business account), andfantasy-john@c.com (private account). Assume John Doe prefers to usepersonal e-mail account to manage all these accounts. As such, Johndesignates personal-john@a.com as the primary source account. When Johnsends an outbound e-mail from within, he can select the e-mail addressfrom either personal account, small business account, or privateaccount. The recipient will only see the selected account as the sender.

In one embodiment, the first account 112 has a first storage space 114associated therewith for storing messages directed to the first account112 as the destination account. Similarly, the second account 116 has asecond storage space 118 associated therewith for storing messagesdirected to the second account 116 as the destination account.

On the other hand, when receiving an inbound e-mail, the system 100 willmove the mail messages from its original destination inbox (e.g., thefirst storage space 114 or the second storage space 118) to theaggregate inbox (e.g., primary message storage 122). When the user wantsto reply this e-mail back to the sender, the e-mail client device (e.g.,a local computer or a web browser) may select by default the (originalrecipient) e-mail address on the To field of the original e-mail. Wherethere are multiple e-mail addresses on the “To” field, the system 100may choose one that is associated with the primary source account.Nevertheless, the user is enabled to overwrite the system 100 bychanging the e-mail address or the source account.

In one alternative embodiment, the system 100 enables anonymouse-mailing, where the “anonymity” is achieved by replacing the regularaccount identification with a tentative ID that is valid for an extendedperiod of time, say 1-6 months.

In another embodiment, the system 100 may be implemented for enablingthe user 110 to select a telephone number as a source account for anoutgoing call, as illustrated in FIG. 3. For example, FIG. 3 illustratesone or more telephone accounts 302, such as VOIP phone 302-1, a cellularor mobile phone 302-2, and a landline phone 302-3 (e.g., home phone orwork phone). Also, a set of VOIP phones 304 may be part of the accountsassociated with the user 110. A communication network 306 connects theseaccounts and/or devices together, such as via the Internet.

In terms of telephone accounts, a caller ID is a unique identifier forthe telephone that identifies the account. Therefore, each account 302or 304 has a source account associated therewith. In other words, auser's account 110 may be associated with multiple phone numbers, suchas, but not limited to, work phone, home phone, and mobile phone. Inaccount aggregation, phone numbers may have a duplicate and anyduplicates will be removed. The user may select as caller ID any phonenumber from this set of unique phone numbers. The primary source accounttherefore has multiple caller IDs as well. It is also to be understoodthat proper verification or authentication is needed for verifying thatthe user 110 has the permission or authority to use the accounts 302.

In one embodiment, to make an outbound phone call, the user 110 mayselect the caller ID from a set of pre-configured phone numbers in theprimary source account 120. By so doing, when the call is made, thecaller ID shows up in the callee's display of caller ID, so the calleecan call back to the caller.

For an inbound call, the system 100 may route the call to theappropriate endpoint (e.g., accounts 302), including but not limited tomobile phone, landline phone, VoIP softphone, and VoIP phone device,based on callee's call routing rules. From the caller's perspective, thecaller is not aware that the call is routed to another endpoint.

In an alternative embodiment, aspects of the invention may also enableanonymous calling, where the “anonymity” is achieved by replacing thenormal caller ID with a tentative caller ID that is valid for anextended period of time, say 1-6 months.

In an alternative embodiment, when calls are made from an VoIP account,aspects of the invention process at least the following routines:

1. When SIP Proxy A 308 receives a VoIP call, it will determine if thedestination softphone, say softphone N 310, is online or not.

2. If the destination softphone of the callee is online, SIP Proxy A 308routes the call to the destination softphone (i.e., softphone N 310).

3. If the destination softphone is not online, SIP Proxy A 308 routesthe call to the aggregation softphone A 312 of the callee.

4. If neither of the above softphones is online, SIP Proxy A 308 mayroute the call to any online softphone endpoint (e.g., softphone_1 314and softphone_2 316) for this callee.

5. Regardless of which softphone answering the call, the call historywill remember the triplet <Caller's Caller ID, Callee's Caller ID, andReceiving Softphone's Caller ID>.

Alternative, when sending VoIP Calls:

1. When the user wants to make a new call, the system can find out whichsoftphone was to receive any call from this callee based on the tripletsin the call history (e.g., history 124), also to be discussed furtherbelow.

2. If no softphone is found, the system 100 may automatically put thecaller ID of the aggregate softphone as the caller ID of this new call.

3. If a single softphone is identified, the system 100 may automaticallyput the caller ID of this softphone as the caller ID for this new call.

4. The system 100 uses the identified caller ID as the caller ID for thenew call.

Referring now to FIGS. 4-7, exemplary screen shots illustrate aspects ofthe invention for selecting a source account for an outgoing or outboundmessage from a user according to an embodiment of the invention.Referring to FIG. 4, a window 402 illustrates an e-mail messagecomposition screen. A status bar 404 illustrates an account status ofthe primary source account or aggregate account 120 of the user 110. Forexample, the status bar 404 illustrates that the user is “Signed In” andincludes a Send Message control or button 406 for sending an e-mailmessage. The status bar 404 also includes a Sign Out control or button408 for enabling the user 110 to sign out of the primary source account120. In one embodiment, the status bar 404 also shows the information ofthe primary source account 120.

In order to send an message, the user 110 may select one or more sourceaccounts associated with the user 110 by selecting a drop-down control410 in the “FROM” field. Upon activating such the drop-down control 410,aspects of the invention provide a list of associated accounts. In thisexample, the first account 112 and the second account 116 are listed. Inother words, the user 110 may now select one of the source accountsassociated with user 110 when the user 110 is signed in to oneparticular account.

FIG. 5 illustrates a simplistic screen display showing a message 420received from USER_B@B.COM. In addition, the message 420 is intended tobe delivered to one of the source accounts that the user 110 has:second.account@company.com (i.e., the second account 116). Because theuser 110 has designated the first account 112 as the primary sourceaccount 120, all messages directed to other accounts associated with theuser 110 will be delivered to the primary source account 120.

In FIG. 6, when the user 110 wishes to respond to the message 420, a“FROM” field 422 of a response message 424 now indicates“second.account@company.com.” In other words, aspects of the inventionpersist or maintain the original destination account when the user 110wishes to respond (e.g., by pressing a “RESPOND” button or control 426)to the sender. By doing this, aspects of the invention beneficiallymaintain the proper continuity for both the user 110 and the intendedrecipient because the user 110 and the recipient can easily recognizethe e-mail messages between each other. Unlike previous implementationswhere an account is designated as a primary account, the primary accountwill replace the originally intended destination when the user wishes torespond to the message. This may cause confusion on the recipient orthis may unintentionally reveal to the recipient from the sender thatthe sender actually has different accounts that the recipient is notaware of.

FIG. 7 illustrates another UI implementation when using on a telephonedevice 700. For example, FIG. 7 illustrates an exemplary telephoneinterface with one menu section “SOURCE ACCOUNTS” 702 for enabling theuser 110 to select one of the source accounts associated therewith. Inone embodiment, the user 110 selects a work phone as a primary sourceaccount 120 or a source account for the call at 704.

FIG. 8 is an exemplary flow chart illustrating operation of selecting asource account for an outgoing message for a user according to anembodiment of the invention. At 802, a collection of source accounts isassociated with the user. Each of said source accounts has an individualcontent storage for storing communication content associated with thecorresponding source accounts. At 804, a user's authentication for usingthe associated collection of source accounts is validated. For example,the user 110 may need to verify a number of information to indicate thatthe user 110 has the rights or permissions to the use the collection ofsource accounts. One source account in the validated collection isdesignated as a primary source account at 806. At 808, the sourceaccounts are aggregated to a primary content storage. The primarycontent storage is associated with the primary source account. The useris authenticated to sign in the primary source account at 810. At 812, acommunication content (e.g., a message or a call) is generated from theprimary source account and the primary content storage. For example, theuser 110 provide instructions (e.g., through input device indications)for generating a message directed to a recipient. AT 814, one of thesource accounts in the collection is selected as the source account forthe generated communication content while the user is signed in to theprimary source account.

In one embodiment, the user may overwrite or cancel this selectionoption by always designating the primary source account as the onlysource account for messages. In another embodiment, when responding to amessage previously received by one of the source accounts, aspects ofthe invention maintain or persist the original intended account as thesource account (i.e., the “FROM” field). Alternative embodiments mayenable the user to overwrite this automatic selection of the originalintended account as the source account. A further embodiment of theinvention may analyze each of the messages based on characteristics suchas the first account, the second account, and one or more destinationaccounts for the stored messages. Another embodiment of the inventionmay establish a history to identify relationships based on the analysisof the characteristics. For example, suppose the user 110 frequentlysends messages or makes phone calls to USER_C using the second account118 or the cell phone 302-2, the system 100 may establish this historyinformation and automatically configure the generating a message or acommunication content for the USER_C or responding to a message from theUSER_C based on the analyzed characteristics. In another embodiment, thesystem 100 may suggest a source account based on the history or theanalyzed characteristics.

The order of execution or performance of the operations in embodimentsof the invention illustrated and described herein is not essential,unless otherwise specified. That is, the operations may be performed inany order, unless otherwise specified, and embodiments of the inventionmay include additional or fewer operations than those disclosed herein.For example, it is contemplated that executing or performing aparticular operation before, contemporaneously with, or after anotheroperation is within the scope of aspects of the invention.

Embodiments of the invention may be implemented with computer-executableinstructions. The computer-executable instructions may be organized intoone or more computer-executable components or modules. Aspects of theinvention may be implemented with any number and organization of suchcomponents or modules. For example, aspects of the invention are notlimited to the specific computer-executable instructions or the specificcomponents or modules illustrated in the figures and described herein.Other embodiments of the invention may include differentcomputer-executable instructions or components having more or lessfunctionality than illustrated and described herein.

When introducing elements of aspects of the invention or the embodimentsthereof, the articles “a,” “an,” “the,” and “said” are intended to meanthat there are one or more of the elements. The terms “comprising,”“including,” and “having” are intended to be inclusive and mean thatthere may be additional elements other than the listed elements.

Having described aspects of the invention in detail, it will be apparentthat modifications and variations are possible without departing fromthe scope of aspects of the invention as defined in the appended claims.As various changes could be made in the above constructions, products,and methods without departing from the scope of aspects of theinvention, it is intended that all matter contained in the abovedescription and shown in the accompanying drawings shall be interpretedas illustrative and not in a limiting sense.

What is claimed is:
 1. A method for selecting a source account for anoutgoing communication content of a user, said method comprising:associating a collection of independent source accounts with the user,each of said source accounts having an individual content storage, saidindividual content storage storing communication content associated withthe corresponding source accounts; validating a user's authenticationfor using each source account of the associated collection of sourceaccounts; receiving, from the user, a selection of one source account ofthe validated, associated source accounts as a primary source account;aggregating the source accounts in the collection to a primary contentstorage, said primary content storage being associated with the primarysource account; authenticating the user to sign in to the primary sourceaccount; receiving instructions from the user for generating acommunication content from the selected primary source account and theprimary content storage; receiving instructions from the user forselecting one of the source accounts in the collection as the sourceaccount for the generated communication content, wherein the user issigned in to the primary source account, said selected source accountdifferent from the primary source account; analyzing the communicationcontent stored in the primary content storage; establishing a historyfor identifying relationships in at least one of the following: thesource accounts in the collection and one or more destination accountsfor the stored communication content; suggesting a source account forthe outgoing message based on the established history and sending thegenerated message from the primary source account with the selectedsource account as the sender source account.
 2. The method of claim 1,wherein associating comprises associating the collection of sourceaccounts with the user, said source accounts including at least one ormore of the following: a telephone number and an electronic mail(e-mail) address.
 3. The method of claim 1, wherein aggregatingcomprises forwarding communication content directed to the sourceaccounts in the collection to the primary source account.
 4. The methodof claim 1, wherein receiving instructions from the user for generatingthe communication content comprises receiving instructions from the userfor performing at least one of the following: sending a newcommunication content and responding to a previous communication contentalready stored in the primary content storage.
 5. The method of claim 1,wherein designating comprises designating the one source account in thevalidated collection as the primary source account for receivingcommunication content intended for source accounts other than theprimary account.
 6. A method for persisting one source account among aplurality of aggregated accounts for an outgoing message of a user, saidmethod comprising: associating at least a first account and a secondaccount with the user as source accounts, said first account having afirst content storage for storing messages delivered to said firstaccount and indicating said first account as a destination account, saidsecond account having a second content storage for storing messagesdelivered to said second account and indicating said second account as adestination account; validating a user's authentication for using eachof the associated first account and the second account; receiving, fromthe user, a selection of the validated first account from the validated,associated source accounts as a primary source account; aggregating thefirst content storage and the second content storage to a primarymessage storage, said primary message storage being associated with theprimary source account, said primary message storage storing messagesdelivered to the first content storage and storing messages delivered tothe second content storage; authenticating the user to sign in to theprimary source account; receiving instructions from the user forgenerating a message from the primary source account and the primarymessage storage, said generated message responding to one of themessages stored in the primary message storage, said one of the messagesbeing a message delivered to the second account; persisting the secondaccount as a sender source account for the generated message, whereinthe user is still signed in to the primary source account, wherein thegenerated message is sent from the primary source account with thevalidated second account as the sender source account; establishing ahistory for identifying relationships based on analyzed characteristicsand in at least one of the following: the source accounts in thecollection and one or more destination accounts for the storedcommunication content; and suggesting a source account for the outgoingmessage based on the established history.
 7. The method of claim 6,wherein aggregating comprises forwarding messages directed to the firstaccount and the second account to the primary source account whilemaintaining the first account and the second account as destinationaccounts for the corresponding forwarded messages.
 8. The method ofclaim 6, wherein associating comprises associating the collection ofsource accounts with the user, said source accounts including at leastone or more of the following: a telephone number and an electronic mail(e-mail) address.
 9. The method of claim 6, wherein designatingcomprises designating the validated first account as the primary sourceaccount for receiving messages intended for the second account.
 10. Themethod of claim 6, further comprising analyzing at least one of thefollowing characteristics of the messages stored in the primary messagestorage: the first account, the second account, and one or moredestination accounts for the stored messages.
 11. A system of managingmessages for a user, said system comprising: an interface for performingat least one of the following operations: receiving messages,transmitting messages, receiving instructions from the user, andtransmitting responses to the user in response to the receivedinstructions; a central memory storage for storing messages; a processorconfigured to execute computer-executable instructions for: associatingat least a first account and a second account with the user as sourceaccounts, said first account having a first storage space in the centralmemory storage with messages delivered to said first account andindicating said first account as a destination account, said secondaccount having a second storage space in the central memory storage withmessages delivered to said second account and indicating said secondaccount as a destination account; validating a user's authentication forusing each of the associated first account and the second account;receiving, from the user, a selection of the first account from thevalidated, associated source accounts as a primary source account;aggregating the first storage space and the second storage space to aprimary message storage, said primary message storage being associatedwith the primary source account, said primary message storage storingmessages delivered to the first content storage and storing messagesdelivered to the second content storage; authenticating the user to signin to the primary source account; establishing a history for identifyingrelationships based on analyzed characteristics and in at least one ofthe following: the first account, the second account, and one or moredestination accounts for the stored messages; and suggesting a sourceaccount for an outgoing message based on the established history;wherein the system comprises at least one or more of the following:wherein the interface receives instructions from the user for generatingand sending a message from the primary source account and the primarymessage storage with the validated sender account as the sender sourceaccount, wherein the interface receives instructions from the user forselecting the second account as the source account for the generatedcommunication content while the user is signed in to the primary sourceaccount; and wherein the interface receives instructions from the userfor generating and sending a second message from the primary sourceaccount and the primary message storage with the validated senderaccount as the sender source account, said generated message respondingto one of the messages stored in the primary message storage, said oneof the messages being a message delivered to the second account, andwherein the processor persists the second account as a sender sourceaccount for the generated message as the user is signed in to theprimary source account.
 12. The system of claim 11, wherein the firstaccount or the second account comprises at least one or more of thefollowing: a telephone number and an electronic mail (e-mail) address.13. The system of claim 11, wherein the processor is configured toforward messages directed to the second account to the primary sourceaccount.
 14. The system of claim 11, wherein the processor is furtherconfigured to analyze at least one of the following characteristics ofthe messages stored in the primary message storage: the first account,the second account, and one or more destination accounts for the storedmessages.